package org.changchen.fgt.dto;

import java.io.Serializable;
import java.util.List;

import org.apache.commons.lang.StringUtils;
import org.changchen.fgt.utils.ShowNameUtil;

import com.alibaba.fastjson.annotation.JSONField;

import lombok.Data;
import lombok.Setter;

/**
 * 视频详细信息对象 t_video_detail
 * 
 * @author ruoyi
 * @date 2020-11-19
 */
@Data
public class VideoDetail implements Serializable{
	
    /** serialVersionUID*/
	private static final long serialVersionUID = 5653234877824763237L;
	
	private String vodPlayFrom;

	/** 唯一标识 */
    private Integer id;

    /** 分类ID */
    private Integer tid;

    /** 分类名称 */
    private String type;

    /** 视频名称 */
    private String name;
    
    /** 视频名称首字母 */
    private String letter;

    /** 视频封面图 */
    private String pic;

    /** actor*/
    @Setter
    private String actor;

    /**  */
    @Setter
    private String director;

    /**  */
    @Setter
    private String note;

    /** 地区 */
    private String area;

    /** 语言 */
    private String lang;

    /** 出品年份 */
    private String year;

    /**  */
    @JSONField(name = "last")
    private String time;

    
    private String des;
    
    @JSONField(name = "dl")
    private String source;
    
    /** 播放地址 */
    private List<VideoPlayInfo> playList;
    
    
    public String getDesWithoutHtml() {
    	if(StringUtils.isNotBlank(this.des)) {
    		return this.des.replaceAll("\\&[a-zA-Z]{1,10};", "")
    				.replaceAll("<[^>]*>", "")
    				.replaceAll("[(/>)<]", "")
    				.replaceAll("\\[\\]", "暂无");
    	}
    	return "";
    }
    
    public String getNote() {
    	
    	if(StringUtils.isBlank(this.note)) {
    		return "";
    	}
    	
    	String result = this.note.replaceAll("\\[\\]", "");
    	
    	// 如果是空,则显示为空
    	if(StringUtils.isBlank(result)) {
    		return "全集";
    	}
    	
    	// 更新中
    	if(result.indexOf("更新") < 0 
    			&& result.indexOf("完结") < 0 
    			&& result.indexOf("全") < 0
    			&& result.length() < 6) {
    		result = "更新至" + (result);
    	}
    	
    	// 无
    	return result;
    }
    
    public String getDirector() {
    	return ShowNameUtil.showNull(this.director);
    }
    
    public String getShortDirector() {
    	
    	if(StringUtils.isBlank(this.director)) {
    		return this.director;
    	}
    	
    	int end = this.director.indexOf(",");
		if(end > 0) {
			this.director = this.director.substring(0, end);
		}
    	
    	return ShowNameUtil.showNull(this.director);
    }
    
    public String getActor() {
    	return ShowNameUtil.showNull(this.actor);
    }

}
